package com.yicong.ants.bean.circle;

import java.util.List;

/**
 * @author cch
 * @version 2020/11/3
 */
public class Tutorial {

    Quote quote;
    List<BannerBean> slide;
    Subsidy subsidy;
    float max_subsidy;
    String share_url;
    String stuff_url;
    String travel_url;

    public Tutorial() {
    }

    public Quote getQuote() {
        return this.quote;
    }

    public List<BannerBean> getSlide() {
        return this.slide;
    }

    public Subsidy getSubsidy() {
        return this.subsidy;
    }

    public float getMax_subsidy() {
        return this.max_subsidy;
    }

    public String getShare_url() {
        return this.share_url;
    }

    public String getStuff_url() {
        return this.stuff_url;
    }

    public String getTravel_url() {
        return this.travel_url;
    }

    public void setQuote(Quote quote) {
        this.quote = quote;
    }

    public void setSlide(List<BannerBean> slide) {
        this.slide = slide;
    }

    public void setSubsidy(Subsidy subsidy) {
        this.subsidy = subsidy;
    }

    public void setMax_subsidy(float max_subsidy) {
        this.max_subsidy = max_subsidy;
    }

    public void setShare_url(String share_url) {
        this.share_url = share_url;
    }

    public void setStuff_url(String stuff_url) {
        this.stuff_url = stuff_url;
    }

    public void setTravel_url(String travel_url) {
        this.travel_url = travel_url;
    }

    public boolean equals(final Object o) {
        if (o == this) return true;
        if (!(o instanceof Tutorial)) return false;
        final Tutorial other = (Tutorial) o;
        if (!other.canEqual((Object) this)) return false;
        final Object this$quote = this.getQuote();
        final Object other$quote = other.getQuote();
        if (this$quote == null ? other$quote != null : !this$quote.equals(other$quote))
            return false;
        final Object this$slide = this.getSlide();
        final Object other$slide = other.getSlide();
        if (this$slide == null ? other$slide != null : !this$slide.equals(other$slide))
            return false;
        final Object this$subsidy = this.getSubsidy();
        final Object other$subsidy = other.getSubsidy();
        if (this$subsidy == null ? other$subsidy != null : !this$subsidy.equals(other$subsidy))
            return false;
        if (Float.compare(this.getMax_subsidy(), other.getMax_subsidy()) != 0) return false;
        final Object this$share_url = this.getShare_url();
        final Object other$share_url = other.getShare_url();
        if (this$share_url == null ? other$share_url != null : !this$share_url.equals(other$share_url))
            return false;
        final Object this$stuff_url = this.getStuff_url();
        final Object other$stuff_url = other.getStuff_url();
        if (this$stuff_url == null ? other$stuff_url != null : !this$stuff_url.equals(other$stuff_url))
            return false;
        final Object this$travel_url = this.getTravel_url();
        final Object other$travel_url = other.getTravel_url();
        if (this$travel_url == null ? other$travel_url != null : !this$travel_url.equals(other$travel_url))
            return false;
        return true;
    }

    protected boolean canEqual(final Object other) {
        return other instanceof Tutorial;
    }

    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $quote = this.getQuote();
        result = result * PRIME + ($quote == null ? 43 : $quote.hashCode());
        final Object $slide = this.getSlide();
        result = result * PRIME + ($slide == null ? 43 : $slide.hashCode());
        final Object $subsidy = this.getSubsidy();
        result = result * PRIME + ($subsidy == null ? 43 : $subsidy.hashCode());
        result = result * PRIME + Float.floatToIntBits(this.getMax_subsidy());
        final Object $share_url = this.getShare_url();
        result = result * PRIME + ($share_url == null ? 43 : $share_url.hashCode());
        final Object $stuff_url = this.getStuff_url();
        result = result * PRIME + ($stuff_url == null ? 43 : $stuff_url.hashCode());
        final Object $travel_url = this.getTravel_url();
        result = result * PRIME + ($travel_url == null ? 43 : $travel_url.hashCode());
        return result;
    }

    public String toString() {
        return "Tutorial(quote=" + this.getQuote() + ", slide=" + this.getSlide() + ", subsidy=" + this.getSubsidy() + ", max_subsidy=" + this.getMax_subsidy() + ", share_url=" + this.getShare_url() + ", stuff_url=" + this.getStuff_url() + ", travel_url=" + this.getTravel_url() + ")";
    }

    public static class BannerBean {
        private String title;
        private String img;
        private String url;

        public BannerBean() {
        }

        public String getTitle() {
            return this.title;
        }

        public String getImg() {
            return this.img;
        }

        public String getUrl() {
            return this.url;
        }

        public void setTitle(String title) {
            this.title = title;
        }

        public void setImg(String img) {
            this.img = img;
        }

        public void setUrl(String url) {
            this.url = url;
        }

        public boolean equals(final Object o) {
            if (o == this) return true;
            if (!(o instanceof BannerBean)) return false;
            final BannerBean other = (BannerBean) o;
            if (!other.canEqual((Object) this)) return false;
            final Object this$title = this.getTitle();
            final Object other$title = other.getTitle();
            if (this$title == null ? other$title != null : !this$title.equals(other$title))
                return false;
            final Object this$img = this.getImg();
            final Object other$img = other.getImg();
            if (this$img == null ? other$img != null : !this$img.equals(other$img)) return false;
            final Object this$url = this.getUrl();
            final Object other$url = other.getUrl();
            if (this$url == null ? other$url != null : !this$url.equals(other$url)) return false;
            return true;
        }

        protected boolean canEqual(final Object other) {
            return other instanceof BannerBean;
        }

        public int hashCode() {
            final int PRIME = 59;
            int result = 1;
            final Object $title = this.getTitle();
            result = result * PRIME + ($title == null ? 43 : $title.hashCode());
            final Object $img = this.getImg();
            result = result * PRIME + ($img == null ? 43 : $img.hashCode());
            final Object $url = this.getUrl();
            result = result * PRIME + ($url == null ? 43 : $url.hashCode());
            return result;
        }

        public String toString() {
            return "Tutorial.BannerBean(title=" + this.getTitle() + ", img=" + this.getImg() + ", url=" + this.getUrl() + ")";
        }
    }

    public static class Quote {
        private String day;
        private String content;

        public Quote() {
        }

        public String getDay() {
            return this.day;
        }

        public String getContent() {
            return this.content;
        }

        public void setDay(String day) {
            this.day = day;
        }

        public void setContent(String content) {
            this.content = content;
        }

        public boolean equals(final Object o) {
            if (o == this) return true;
            if (!(o instanceof Quote)) return false;
            final Quote other = (Quote) o;
            if (!other.canEqual((Object) this)) return false;
            final Object this$day = this.getDay();
            final Object other$day = other.getDay();
            if (this$day == null ? other$day != null : !this$day.equals(other$day)) return false;
            final Object this$content = this.getContent();
            final Object other$content = other.getContent();
            if (this$content == null ? other$content != null : !this$content.equals(other$content))
                return false;
            return true;
        }

        protected boolean canEqual(final Object other) {
            return other instanceof Quote;
        }

        public int hashCode() {
            final int PRIME = 59;
            int result = 1;
            final Object $day = this.getDay();
            result = result * PRIME + ($day == null ? 43 : $day.hashCode());
            final Object $content = this.getContent();
            result = result * PRIME + ($content == null ? 43 : $content.hashCode());
            return result;
        }

        public String toString() {
            return "Tutorial.Quote(day=" + this.getDay() + ", content=" + this.getContent() + ")";
        }
    }

    public static class Subsidy {
        private float value;
        private float level_1_value;
        private float level_2_value;
        private float level_3_value;
        private float level_4_value;
        private float level_5_value;
        private String ts;
        private long timestamp;
        private float day;
        private float max_value;
        private int max_value_int;

        public Subsidy() {
        }

        public int getMax_value_int() {
            return (int) (max_value * 100);
        }

        public float getDay() {
            return timestamp / 86400f;
        }

        public float getValue() {
            return this.value;
        }

        public float getLevel_1_value() {
            return this.level_1_value;
        }

        public float getLevel_2_value() {
            return this.level_2_value;
        }

        public float getLevel_3_value() {
            return this.level_3_value;
        }

        public float getLevel_4_value() {
            return this.level_4_value;
        }

        public float getLevel_5_value() {
            return this.level_5_value;
        }

        public String getTs() {
            return this.ts;
        }

        public long getTimestamp() {
            return this.timestamp;
        }

        public float getMax_value() {
            return this.max_value;
        }

        public void setValue(float value) {
            this.value = value;
        }

        public void setLevel_1_value(float level_1_value) {
            this.level_1_value = level_1_value;
        }

        public void setLevel_2_value(float level_2_value) {
            this.level_2_value = level_2_value;
        }

        public void setLevel_3_value(float level_3_value) {
            this.level_3_value = level_3_value;
        }

        public void setLevel_4_value(float level_4_value) {
            this.level_4_value = level_4_value;
        }

        public void setLevel_5_value(float level_5_value) {
            this.level_5_value = level_5_value;
        }

        public void setTs(String ts) {
            this.ts = ts;
        }

        public void setTimestamp(long timestamp) {
            this.timestamp = timestamp;
        }

        public void setDay(float day) {
            this.day = day;
        }

        public void setMax_value(float max_value) {
            this.max_value = max_value;
        }

        public void setMax_value_int(int max_value_int) {
            this.max_value_int = max_value_int;
        }

        public boolean equals(final Object o) {
            if (o == this) return true;
            if (!(o instanceof Subsidy)) return false;
            final Subsidy other = (Subsidy) o;
            if (!other.canEqual((Object) this)) return false;
            if (Float.compare(this.getValue(), other.getValue()) != 0) return false;
            if (Float.compare(this.getLevel_1_value(), other.getLevel_1_value()) != 0) return false;
            if (Float.compare(this.getLevel_2_value(), other.getLevel_2_value()) != 0) return false;
            if (Float.compare(this.getLevel_3_value(), other.getLevel_3_value()) != 0) return false;
            if (Float.compare(this.getLevel_4_value(), other.getLevel_4_value()) != 0) return false;
            if (Float.compare(this.getLevel_5_value(), other.getLevel_5_value()) != 0) return false;
            final Object this$ts = this.getTs();
            final Object other$ts = other.getTs();
            if (this$ts == null ? other$ts != null : !this$ts.equals(other$ts)) return false;
            if (this.getTimestamp() != other.getTimestamp()) return false;
            if (Float.compare(this.getDay(), other.getDay()) != 0) return false;
            if (Float.compare(this.getMax_value(), other.getMax_value()) != 0) return false;
            if (this.getMax_value_int() != other.getMax_value_int()) return false;
            return true;
        }

        protected boolean canEqual(final Object other) {
            return other instanceof Subsidy;
        }

        public int hashCode() {
            final int PRIME = 59;
            int result = 1;
            result = result * PRIME + Float.floatToIntBits(this.getValue());
            result = result * PRIME + Float.floatToIntBits(this.getLevel_1_value());
            result = result * PRIME + Float.floatToIntBits(this.getLevel_2_value());
            result = result * PRIME + Float.floatToIntBits(this.getLevel_3_value());
            result = result * PRIME + Float.floatToIntBits(this.getLevel_4_value());
            result = result * PRIME + Float.floatToIntBits(this.getLevel_5_value());
            final Object $ts = this.getTs();
            result = result * PRIME + ($ts == null ? 43 : $ts.hashCode());
            final long $timestamp = this.getTimestamp();
            result = result * PRIME + (int) ($timestamp >>> 32 ^ $timestamp);
            result = result * PRIME + Float.floatToIntBits(this.getDay());
            result = result * PRIME + Float.floatToIntBits(this.getMax_value());
            result = result * PRIME + this.getMax_value_int();
            return result;
        }

        public String toString() {
            return "Tutorial.Subsidy(value=" + this.getValue() + ", level_1_value=" + this.getLevel_1_value() + ", level_2_value=" + this.getLevel_2_value() + ", level_3_value=" + this.getLevel_3_value() + ", level_4_value=" + this.getLevel_4_value() + ", level_5_value=" + this.getLevel_5_value() + ", ts=" + this.getTs() + ", timestamp=" + this.getTimestamp() + ", day=" + this.getDay() + ", max_value=" + this.getMax_value() + ", max_value_int=" + this.getMax_value_int() + ")";
        }
    }
}
